﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using JA.Negocios;
using System.Net.Mail;
using System.Configuration;
using System.Net;

namespace JA.Web.Apresentacao
{
    public partial class FaleConosco : System.Web.UI.Page
    {
        string captcha = null;

        protected void Page_Load(object sender, EventArgs e)
        {

            captcha = (string)this.Session["captcha"];

            this.LabelEmail.Text = ModelBO.getParametro("Cabecalho_Email");
            this.LabelFone.Text = ModelBO.getParametro("Cabecalho_Fone");
            this.TextBoxImovel.Text = this.Request["idImovel"].ToString();
        }

        protected void ButtonEnviar_Click(object sender, EventArgs e)
        {
            try
            {
                string capt = this.TextBoxCaptcha.Text;

                if (capt.ToUpper().Trim().Equals(captcha))
                {
                    if (this.TextBoxMensagem.Text.Trim().Length > 0)
                    {
                        sendEmail();

                        this.LiteralMensagem.Text = "Sua mensagem foi enviada!<Br> Aguarde nosso retorno.<br>Obrigado!";
                        this.ButtonEnviar.Visible = false;
                        this.PanelContato.Visible = false;
                        this.PanelOK.Visible = true;
                    }
                    else
                    {
                        this.LiteralMensagem.Text = "Mensagem não informada.";
                    }
                }
                else
                {
                    this.LiteralMensagem.Text = "Código de segurança incorreto.";
                }
            }
            catch (Exception ex)
            {
                this.LiteralMensagem.Text = "Ocorreu um problema durante o envio.<br>Aguarde alguns instantes e tente novamente.<br>Obrigado.";
            }
        }

        protected void sendEmail()
        {
            MailMessage oEmail = new MailMessage();
            MailAddress sDe = new MailAddress(ConfigurationManager.AppSettings["Email.Administrador"]);

            oEmail.To.Add(ConfigurationManager.AppSettings["Email.Contato"]);
            oEmail.From = sDe;
            oEmail.Priority = MailPriority.Normal;
            oEmail.IsBodyHtml = false;
            oEmail.Subject = "Contato de Cliente - Site www.joseimoveis.com.br";
            oEmail.Body = "Um usuário enviou esta mensagem pelo site www.joseimoveis.com.br:\n\n\n" +
                          "Imovel: " + this.TextBoxImovel.Text + "\n" + 
                          "Nome: " + this.TextBoxNome.Text + "\n" +
                          "email: " + this.TextBoxMail.Text + "\n" +
                          "Fone: " + this.TextBoxFone.Text + "\n" +
                          "Assunto: " + this.TextBoxAssunto.Text + "\n\n" +
                          "Mensagem:\n[ " + this.TextBoxMensagem.Text + " ]\n\n" +
                          "*Este email foi enviado automaticamente pelo site em " + DateTime.Now.ToString();

            SmtpClient oEnviar = new SmtpClient();
            oEnviar.Host = ConfigurationManager.AppSettings["Email.Host.SMTP"];
            oEnviar.Port = int.Parse(ConfigurationManager.AppSettings["Email.Host.SMTP.Port"]);
            oEnviar.Credentials = new NetworkCredential(
                                            ConfigurationManager.AppSettings["Email.Administrador"],
                                            ConfigurationManager.AppSettings["Email.Administrador.Pass"]);
            oEnviar.Send(oEmail);
            oEmail.Dispose();
        }

    }
}
